<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <meta name="author" content="Steven Watson">
  <link rel="shortcut icon" href="../../img/favicon.ico">
  <title>Events - Chez-SDL</title>
  <link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'>

  <link rel="stylesheet" href="../../css/theme.css" type="text/css" />
  <link rel="stylesheet" href="../../css/theme_extra.css" type="text/css" />
  <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/github.min.css">
  
  <script>
    // Current page data
    var mkdocs_page_name = "Events";
    var mkdocs_page_input_path = "ref/events.md";
    var mkdocs_page_url = null;
  </script>
  
  <script src="../../js/jquery-2.1.1.min.js" defer></script>
  <script src="../../js/modernizr-2.8.3.min.js" defer></script>
  <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
  <script>hljs.initHighlightingOnLoad();</script> 
  
</head>

<body class="wy-body-for-nav" role="document">

  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
      <div class="wy-side-nav-search">
        <a href="../.." class="icon icon-home"> Chez-SDL</a>
        <div role="search">
  <form id ="rtd-search-form" class="wy-form" action="../../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" title="Type search term here" />
  </form>
</div>
      </div>

      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
	<ul class="current">
	  
          
            <li class="toctree-l1">
		
    <a class="" href="../..">Getting Started</a>
	    </li>
          
            <li class="toctree-l1">
		
    <a class="" href="../../sdl/">Overview of SDL 2</a>
	    </li>
          
            <li class="toctree-l1">
		
    <span class="caption-text">Tutorials</span>
    <ul class="subnav">
                <li class="">
                    
    <a class="" href="../../tuts/events/">Handling Events</a>
                </li>
                <li class="">
                    
    <a class="" href="../../tuts/renderer/">Renderer Basics</a>
                </li>
                <li class="">
                    
    <a class="" href="../../tuts/advanced-renderer/">Renderer Techniques</a>
                </li>
                <li class="">
                    
    <a class="" href="../../tuts/tetris/">Complete Example: Tetris</a>
                </li>
    </ul>
	    </li>
          
            <li class="toctree-l1">
		
    <span class="caption-text">Reference</span>
    <ul class="subnav">
                <li class="">
                    
    <a class="" href="../basics/">Basics</a>
                </li>
                <li class="">
                    
    <a class="" href="../video/">Video</a>
                </li>
                <li class="">
                    
    <a class="" href="../audio/">Audio</a>
                </li>
                <li class=" current">
                    
    <a class="current" href="./">Events</a>
    <ul class="subnav">
            
    <li class="toctree-l3"><a href="#application-events">Application Events</a></li>
    

    <li class="toctree-l3"><a href="#windowing-events">Windowing Events</a></li>
    

    <li class="toctree-l3"><a href="#keyboard-events">Keyboard Events</a></li>
    

    <li class="toctree-l3"><a href="#text-events">Text Events</a></li>
    

    <li class="toctree-l3"><a href="#mouse-events">Mouse Events</a></li>
    

    <li class="toctree-l3"><a href="#joystick-events">Joystick Events</a></li>
    

    <li class="toctree-l3"><a href="#controller-events">Controller Events</a></li>
    

    <li class="toctree-l3"><a href="#audio-events">Audio Events</a></li>
    

    <li class="toctree-l3"><a href="#touch-events">Touch Events</a></li>
    

    <li class="toctree-l3"><a href="#drag-drop-events">Drag &amp; Drop Events</a></li>
    

    </ul>
                </li>
                <li class="">
                    
    <a class="" href="../inputs/">Inputs</a>
                </li>
                <li class="">
                    
    <a class="" href="../force/">Force Feedback</a>
                </li>
                <li class="">
                    
    <a class="" href="../power/">Power Management</a>
                </li>
                <li class="">
                    
    <a class="" href="../timers/">Timers</a>
                </li>
                <li class="">
                    
    <a class="" href="../values/">Values</a>
                </li>
                <li class="">
                    
    <a class="" href="../data/">Data Objects</a>
                </li>
    </ul>
	    </li>
          
        </ul>
      </div>
      &nbsp;
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
        <a href="../..">Chez-SDL</a>
      </nav>

      
      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="breadcrumbs navigation">
  <ul class="wy-breadcrumbs">
    <li><a href="../..">Docs</a> &raquo;</li>
    
      
        
          <li>Reference &raquo;</li>
        
      
    
    <li>Events</li>
    <li class="wy-breadcrumbs-aside">
      
        <a href="https://github.com/steven741/chez-sdl/edit/master/docs/ref/events.md"
          class="icon icon-github"> Edit on GitHub</a>
      
    </li>
  </ul>
  <hr/>
</div>
          <div role="main">
            <div class="section">
              
                <h1 id="application-events">Application Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-POLL-EVENT</strong>) → '()</p>
</blockquote>
<p>C Function Name:</p>
<blockquote>
<p><code>SDL_PollEvent</code></p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Puts a new event into the library.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-NONE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if there are no events otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TIMESTAMP</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>Get the timestamp of an event. All events have a timestamp.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-QUIT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_QUIT</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CLIPBOARD?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CLIPBOARDUPDATE</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TERMINATING?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_TERMINATING</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-LOW-MEMORY?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_LOWMEMORY</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WILL-ENTER-BACKGROUND?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_WILLENTERBACKGROUND</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DID-ENTER-BACKGROUND?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_DIDENTERBACKGROUND</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WILL-ENTER-FOREGROUND?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_WILLENTERFOREGROUND</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DID-ENTER-FOREGROUND?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_APP_DIDENTERFOREGROUND</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-RENDER-TARGET-RESET?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_RENDER_TARGETS_RESET</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-RENDER-DEVICE-RESET?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_RENDER_DEVICE_RESET</code> otherwise <code>#f</code>.</p>
</blockquote>
<h1 id="windowing-events">Windowing Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WINDOW?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_WINDOWEVENT</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-SYSWM?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_SYSWMEVENT</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-SHOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is shown otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_SHOWN</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-HIDDEN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is hidden otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_HIDDEN</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-EXPOSED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is exposed otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_EXPOSED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-MOVED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is moved otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_MOVED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-RESIZED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is resized otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_RESIZED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-SIZE-CHANGED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window's size changed otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_SIZE_CHANGED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-MINIMIZED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is minimized otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_MINIMIZED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-MAXIMIZED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is maximized otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_MAXIMIZED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-RESTORED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is restored otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_RESTORED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-ENTER?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if mouse entered window otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_ENTER</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-LEAVE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if mouse left window otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_LEAVE</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-FOCUS-GAINED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if keyboard has gained window's focus otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_FOCUS_GAINED</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-FOCUS-LOST?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if keyboard has lost window's focus otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_FOCUS_LOST</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-CLOSE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is closed otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_CLOSE</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-TAKE-FOCUS?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window is offered focus otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_TAKE_FOCUS</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-HIT-TEST?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if window has a special hit test otherwise <code>#f</code>.</p>
</blockquote>
<p>Notes:</p>
<blockquote>
<p>Window Event Type: <code>SDL_WINDOWEVENT_HIT_TEST</code></p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-ID</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The window's id.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-X</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The window event's x value.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-Y</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The window event's y value.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-W</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The window event's width value.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WIN-H</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The window event's height value.</p>
</blockquote>
<h1 id="keyboard-events">Keyboard Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEYUP?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_KEYUP</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEYDOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_KEYDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEYMAP-CHANGED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_KEYMAPCHANGED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEY-REPEAT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key press was repeated otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEY-UP?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#scancodes-keycodes">A SDL key code.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was released otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-KEY-DOWN?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#scancodes-keycodes">A SDL key code.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was pressed otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOD-UP?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#key-modifers">A SDL modifier code.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was released otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOD-DOWN?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#key-modifers">A SDL modifier code.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was pressed otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CODE-UP?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#scancodes-keycodes">A SDL scancode.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was released otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CODE-DOWN?</strong> <em>key</em>) → boolean</p>
</blockquote>
<p>Parameters:</p>
<blockquote>
<p><strong><em>key</em></strong> : <a href="../data/#scancodes-keycodes">A SDL scancode.</a></p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if key was pressed otherwise <code>#f</code>.</p>
</blockquote>
<h1 id="text-events">Text Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TEXT-EDITING?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_TEXTEDITING</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TEXT-INPUT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_TEXTINPUT</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TEXT-EDITING-TEXT</strong>) → string</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The text being edited.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TEXT-INPUT-TEXT</strong>) → string</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The text being input.</p>
</blockquote>
<h1 id="mouse-events">Mouse Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_MOUSEMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-DOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_MOUSEBUTTONDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-UP?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_MOUSEBUTTONUP</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-WHEEL?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_MOUSEWHEEL</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-WHICH</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the mouse for the motion event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-X</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The x value of the mouse motion event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-Y</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The y value of the mouse motion event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-X-REL</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The relative x value of the mouse motion event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-Y-REL</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The relative y value of the mouse motion event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-B-LEFT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the left mouse button is down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-B-MIDDLE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the middle mouse button is down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-B-RIGHT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the right mouse button is down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-B-X1?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the x1 mouse button is down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-MOTION-B-X2?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the x2 mouse button is down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-WHICH</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the mouse for the button event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-STATE</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>'SDL-RELEASED</code> or <code>'SDL-PRESSED</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-BUTTON</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<table>
<thead>
<tr>
<th align="left"></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">SDL-BUTTON-LEFT</td>
</tr>
<tr>
<td align="left">SDL-BUTTON-MIDDLE</td>
</tr>
<tr>
<td align="left">SDL-BUTTON-RIGHT</td>
</tr>
<tr>
<td align="left">SDL-BUTTON-X1</td>
</tr>
<tr>
<td align="left">SDL-BUTTON-X2</td>
</tr>
</tbody>
</table>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-CLICKS</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The number of time there the mouse button has been clicked.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-X</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The x value of the mouse.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-BUTTON-Y</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The y value of the mouse.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-WHEEL-WHICH</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the mouse for the wheel event.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MOUSE-WHEEL-WHICH</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>'SDL-MOUSE-WHEEL-NORMAL</code>, <code>'SDL-MOUSE-WHEEL-FLIPPED</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WHEEL-BUTTON-X</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The x value of the mouse.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-WHEEL-BUTTON-Y</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The y value of the mouse.</p>
</blockquote>
<h1 id="joystick-events">Joystick Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-DEV-ADDED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYDEVICEADDED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-DEV-REMOVED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYDEVICEREMOVED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the joystick device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON-UP?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYBUTTONUP</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON-DOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYBUTTONDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYBUTTONUP</code> or <code>SDL_JOYBUTTONDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON-PRESSED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if button was pressed down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the joystick device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BUTTON</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the button.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-HAT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYHATMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-HAT</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the hat.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-HAT-POS</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<table>
<thead>
<tr>
<th align="left"></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">SDL-HAT-CENTERED</td>
</tr>
<tr>
<td align="left">SDL-HAT-UP</td>
</tr>
<tr>
<td align="left">SDL-HAT-RIGHT</td>
</tr>
<tr>
<td align="left">SDL-HAT-DOWN</td>
</tr>
<tr>
<td align="left">SDL-HAT-LEFT</td>
</tr>
<tr>
<td align="left">SDL-HAT-RIGHT-UP</td>
</tr>
<tr>
<td align="left">SDL-HAT-RIGHT-DOWN</td>
</tr>
<tr>
<td align="left">SDL-HAT-LEFT-UP</td>
</tr>
<tr>
<td align="left">SDL-HAT-LEFT-DOWN</td>
</tr>
</tbody>
</table>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-HAT-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the joystick device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BALL?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYBALLMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BALL</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the ball.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BALL-X-REL</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The motion in the relative x-direction.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BALL-Y-REL</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The motion in the relative y-direction.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-BALL-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the joystick device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-AXIS?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_JOYAXISMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-AXIS</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the axis.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-AXIS-MOTION</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The current position of the axis.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-JOY-AXIS-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the joystick device.</p>
</blockquote>
<h1 id="controller-events">Controller Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-DEV-ADDED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERDEVICEADDED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-DEV-REMOVED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERDEVICEREMOVED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-DEV-REMAPPED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERDEVICEREMAPPED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the game controller.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-AXIS?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERAXISMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-AXIS-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the game controller.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-AXIS</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<table>
<thead>
<tr>
<th align="left"></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-LEFT-X</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-LEFT-Y</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-RIGHT-X</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-RIGHT-Y</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-TRIGGER-LEFT</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-AXIS-TRIGGER-RIGHT</td>
</tr>
</tbody>
</table>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-MOTION</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The current position of the axis.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON-UP?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERBUTTONUP</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON-DOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERBUTTONDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_CONTROLLERBUTTONUP</code> or <code>SDL_CONTROLLERBUTTONDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON-PRESSED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the button is pressed down otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON</strong>) → symbol</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<table>
<thead>
<tr>
<th align="left"></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-A</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-B</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-X</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-Y</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-BACK</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-GUIDE</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-START</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-LEFT-STICK</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-RIGHT-STICK</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-LEFT-SHOULDER</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-RIGHT-SHOULDER</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-UP</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-DOWN</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-LEFT</td>
</tr>
<tr>
<td align="left">SDL-CONTROLLER-BUTTON-RIGHT</td>
</tr>
</tbody>
</table>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-CON-BUTTON-DEVICE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the game controller.</p>
</blockquote>
<h1 id="audio-events">Audio Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-AUDIO-DEVICE-ADDED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_AUDIODEVICEADDED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-AUDIO-DEVICE-REMOVED?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_AUDIODEVICEREMOVED</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-AUDIO-DEVICE-WHICH</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the audio device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-AUDIO-DEVICE-ISCAPTURE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if the device is a capture device otherwise <code>#f</code>.</p>
</blockquote>
<h1 id="touch-events">Touch Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-FINGER-DOWN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_FINGERDOWN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-FINGER-UP?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_FINGERUP</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-FINGER-MOTION?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_FINGERMOTION</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DOLLAR-GESTURE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DOLLARGESTURE</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DOLLAR-RECORD?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DOLLARRECORD</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MULTI-GESTURE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_MULTIGESTURE</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-ID</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the touch device.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-X</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The x-axis location of the touch event, normalized (0...1)</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-Y</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The y-axis location of the touch event, normalized (0...1)</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-DX</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The distance moved in the x-axis, normalized (0...1)</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-DY</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The distance moved in the y-axis, normalized (0...1)</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-TOUCH-PRESSURE</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The quantity of pressure applied, normalized (0...1)</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-FINGER-ID</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the finger.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-GESTURE-ID</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The id of the gesture.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-GESTURE-NUM-FINGERS</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The number of fingers used to draw the stroke.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-GESTURE-ERROR</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The difference between the gesture template and the actual performed gesture.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MULTI-GESTURE-DTHETA</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The amount that the fingers rotated during this motion.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-MULTI-GESTURE-DDIST</strong>) → number</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The amount that the fingers pinched during this motion.</p>
</blockquote>
<h1 id="drag-drop-events">Drag &amp; Drop Events</h1>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DROP-FILE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DROPFILE</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DROP-TEXT?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DROPTEXT</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DROP-BEGIN?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DROPBEGIN</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DROP-COMPLETE?</strong>) → boolean</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p><code>#t</code> if event is of type <code>SDL_DROPCOMPLETE</code> otherwise <code>#f</code>.</p>
</blockquote>
<hr />
<p>Procedure:</p>
<blockquote>
<p>(<strong>SDL-EVENT-DROP-FILE</strong>) → string</p>
</blockquote>
<p>Returns:</p>
<blockquote>
<p>The file name.</p>
</blockquote>
              
            </div>
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="../inputs/" class="btn btn-neutral float-right" title="Inputs">Next <span class="icon icon-circle-arrow-right"></span></a>
      
      
        <a href="../audio/" class="btn btn-neutral" title="Audio"><span class="icon icon-circle-arrow-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <!-- Copyright etc -->
    
      <p><a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/80x15.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p>
    
  </div>

  Built with <a href="http://www.mkdocs.org">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
      
        </div>
      </div>

    </section>

  </div>

  <div class="rst-versions" role="note" style="cursor: pointer">
    <span class="rst-current-version" data-toggle="rst-current-version">
      
          <a href="https://github.com/steven741/chez-sdl/" class="fa fa-github" style="float: left; color: #fcfcfc"> GitHub</a>
      
      
        <span><a href="../audio/" style="color: #fcfcfc;">&laquo; Previous</a></span>
      
      
        <span style="margin-left: 15px"><a href="../inputs/" style="color: #fcfcfc">Next &raquo;</a></span>
      
    </span>
</div>
    <script>var base_url = '../..';</script>
    <script src="../../js/theme.js" defer></script>
      <script src="../../search/main.js" defer></script>

</body>
</html>
